@大麻哈
3年前 提问
1个回答
sql怎么用代码创建数据库
007bug
3年前
下面以MySQL5.7.8为例:
一、使用SQL语句创建
create database stuDB --stuDB是数据库的名称 on primary -- 默认就属于primary文件组,可省略 ( /*--数据文件的具体描述--*/ name='stuDB_data', -- 主数据文件的逻辑名称 filename='D:\stuDB_data.mdf', -- 主数据文件的物理路径和名称 size=5mb, --主数据文件的初始大小 maxsize=100mb, -- 主数据文件增长的最大值 filegrowth=15%--主数据文件的增长率 ) log on ( /*--日志文件的具体描述,各参数含义同上--*/ name='stuDB_log', filename='D:\stuDB_log.ldf', size=2mb, filegrowth=1mb ) -----2.创建数据表 use StuDB --使用某个数据库(在某个数据库下建表) go if exists(select * from sysobjects where name='stuMarks')--查询数据库是否已存在此表 drop table stuMarks--如果存在该表则删除,不存在不执行此句 create table stuMarks --stuMarks是表的名称 ( ExamNo int identity(1,1) primary key,--列名 数据类型 约束 stuNo char(6) not null,--列名 数据类型 是否允许插入Null值 writtenExam int not null, LabExam int not null ) go -- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列alter table 表名 add constraint 约束名 约束类型 具体的约束说明 alter table 表名 drop constraint 约束名
二、java编写创建数据库和表的程序
import java.sql.*; public class Test { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); //一开始必须填一个已经存在的数据库 String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8"; Connection conn = DriverManager.getConnection(url, "root", "123456"); Statement stat = conn.createStatement(); //创建数据库hello stat.executeUpdate("create database hello"); //打开创建的数据库 stat.close(); conn.close(); url = "jdbc:mysql://localhost:3306/hello?useUnicode=true&characterEncoding=utf-8"; conn = DriverManager.getConnection(url, "root", "123456"); stat = conn.createStatement(); //创建表test stat.executeUpdate("create table test(id int, name varchar(80))"); //添加数据 stat.executeUpdate("insert into test values(1, '张三')"); stat.executeUpdate("insert into test values(2, '李四')"); //查询数据 ResultSet result = stat.executeQuery("select * from test"); while (result.next()) { System.out.println(result.getInt("id") + " " + result.getString("name")); } //关闭数据库 result.close(); stat.close(); conn.close(); } }
三、用php代码建立mysql数据库
$rs = mysql_select_db($dbname,$conn); if(!$rs){ $rs = mysql_query("CREATE DATABASE `$dbname`; ",$conn); if(!$rs){ $errstr = GetBackAlert("数据库 {$dbname} 不存在,也没权限创建新的数据库!"); echo $errstr; exit(); }else{ $rs = mysql_select_db($dbname,$conn); if(!$rs){ $errstr = GetBackAlert("你对数据库 {$dbname} 没权限!"); echo $errstr; exit(); }else{ $ctStr = 'CREATE TABLE `wish` ( `id` int(11) NOT NULL auto_increment, `pname` varchar(30) default NULL, `pqq` varchar(10) default NULL, `plocal` varchar(50) default NULL, `pemail` varchar(30) default NULL, `context` tinytext, `addDate` datetime default NULL, `biz1` varchar(250) default NULL, `biz2` varchar(250) default NULL, `biz3` varchar(250) default NULL, `biz4` varchar(250) default NULL, `biz5` varchar(250) default NULL, `biz6` int(11) default NULL, `biz7` int(11) default NULL, `biz8` int(11) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;'; mysql_query($ctStr,$conn); } }